package criterioBusqueda;

import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import model.Publicacion.Pregunta;
import model.Usuario.UsuarioSimple;
import model.criterio.criteriosYbusqueda.CriterioDeAutor;

import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;

public class TestCriterioDeAutor {
	
	UsuarioSimple u;
	UsuarioSimple u2;
    CriterioDeAutor c;
    Pregunta p;

	@Before
	public void setUp() throws Exception {
		u=mock(UsuarioSimple.class);
		u2=mock(UsuarioSimple.class);
		c=new CriterioDeAutor(u);
		p=mock(Pregunta.class);
	}

	@Test
	public void testSeCumple() {
		when(p.getAutor()).thenReturn(u);
		Assert.assertEquals(true, c.seCumple(p));
		when(p.getAutor()).thenReturn(u2);
		Assert.assertEquals(false, c.seCumple(p));
		verify(p,times(2)).getAutor();
		
	}

}
